<?php

// 学生信息控制器

namespace Home\Controller;
use Think\Controller;


class StudentController extends PublicController {

	// 查询学生信息
    public function showList() {
    	// 两种情况
    	// 1 学生查看 , 只能看个人信息
    	// 2 教师查看 , 可以查看所有信息

    	$role_id = session('role_id');

    	if( $role_id == 1 ) { // 教师
            $class_id = I('get.class_id', 1); // 从地址栏获取班级ID, 如无默认1
    		$info = M('student')->field('id,name,gender,class_id,time,address')->where('class_id = %d', $class_id)->select();

            $class_info = M('class')->select();

            $this->assign('class_id', $class_id);
            $this->assign('class_info', $class_info);
    	} else { // 学生
    		$info = M('student')->field('id,name,gender,class_id,time,address')->find(session('id'));

            if( IS_POST ) {
                // 学生修改个人信息
                $data = I('post.');
                $rs = M('student')->where('id = %d', session('id'))->save($data);
                if($rs) {
                    $this->success('修改成功', '', 3);
                } else {
                    $this->error('修改失败', '', 3);
                }
                exit;
            }

    	}

        $this->assign('info', $info);
        $this->assign('role_id', $role_id);
    	$this->display();
    }

    // 新生信息录入
    public function addInfo() {

        // 班级信息
        $class_info = M('class')->select();


        if( IS_POST ) {
            $data = I('post.');

            if( array_key_exists('name', $data) && $data['name'] != '' ) { // 验证姓名字段是否存在
                $data['password'] = md5('123456'); // 给所有新生一个初始密码

                $rs = M('student')->add($data);

                if( $rs ) {
                    $this->success('新生信息录入成功', '', 3);
                } else {
                    $this->error('新生信息录入失败', '', 3);
                }
                exit;
            } else {
                $this->error('录入失败,信息填写不完整', '', 3);
            }
            exit;
        }

        $this->assign('class_info', $class_info);
        $this->display();
    }

}